home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / c_lang / varinc.lzh / ERR_WARN.C < prev    next >
Text File  |  1979-11-30  |  2KB  |  56 lines

  1. /* SOURCE FILE: ERR_WARN.C */
  2. /*****************************************************************************/
  3. /* err_warn() displays a two-string diagnostic message on line 24, waits     */
  4. /*    for the user to press ESC, and then erases the diagnostic message.     */
  5. /*****************************************************************************/
  6.  
  7. #include <stdio.h>
  8. #include <stddefs.h>
  9. #include "projutil.h"
  10.  
  11. #define ESC '\x1b'
  12.  
  13. void err_warn(first, second)
  14. char first[], second[];                   /* two parts of diagnostic message */
  15.  
  16.    {
  17.    IMPORT bflag bell_ok;
  18.    short first_len = strlen(first);
  19.    short second_len = strlen(second);
  20.  
  21.    CUR_MV(24, 1);
  22.    CLR_LINE;
  23.    tput(24, 1, first);
  24.    tput(24, 2 + first_len, second);
  25.    tput(24, 3 + first_len + second_len,   
  26.       "_ (push ESC)\b\b\b\b\b\b\b\b\b\b\b\b");
  27.    if (bell_ok)
  28.       BELL;
  29.    while (getch() != ESC)                      /* Loop until Escape entered. */
  30.       if (bell_ok)
  31.          BELL;
  32.    CUR_MV(24, 1);
  33.    CLR_LINE;
  34.    }
  35.  
  36.  
  37. /*****************************************************************************/
  38. /* err_exit() displays a diagnostic message through err_warn() and calls     */
  39. /*   exit() to terminate execution. The two-part message is displayed on     */
  40. /*   line 24. When the user presses ESC, the message is erased.              */
  41. /*****************************************************************************/
  42.  
  43. void err_exit(first, second)
  44. char first[], second[];                   /* two parts of diagnostic message */
  45.  
  46.    {
  47.    char log_buf[512];
  48.  
  49.    strcpy(log_buf, first);
  50.    strcat(log_buf, " ");
  51.    strcat(log_buf, second);
  52.    logentry(log_buf);                      /* Record the message in the log. */
  53.    err_warn(first, second);                          /* Display the message. */
  54.    exit(FAIL);                            /* Terminate program: FAIL status. */
  55.    } 
  56.